package cn.javasm.utils;

import cn.javasm.demo.CreateDocx;
import cn.javasm.entity.StudyInfo;
import freemarker.template.Configuration;
import freemarker.template.Template;
import freemarker.template.TemplateException;

import java.io.FileWriter;
import java.io.IOException;
import java.io.OutputStream;
import java.io.Writer;
import java.nio.charset.StandardCharsets;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

/**
 * @version: 0.1
 */
public class DocxUtil {

    public static void generate(String templateName, Object dataModel, Writer writer) throws IOException, TemplateException {
        // 创建配置对象
        Configuration configuration = new Configuration(Configuration.VERSION_2_3_31);
        // 设置编码格式
        configuration.setDefaultEncoding("utf-8");
        // 设置模板的目录
        configuration.setClassLoaderForTemplateLoading(CreateDocx.class.getClassLoader(),"/template");
        // 获取模板
        Template template = configuration.getTemplate(templateName);

        // 把数据渲染到模板上，并且输出到本地
        template.process(dataModel,writer);

    }
}
